/*
 * IOCfg.c
 *
 *  Created on: 6 paź 2014
 *      Author: ksiadmar
 */
#include <avr/io.h>
#include <avr/interrupt.h> //dołączenie biblioteki z przerwaniami
void initIO()
{
	//C PORTS
	DDRC = 0x0;
	DDRC |= _BV(PC1) | _BV(PC2) | _BV(PC3);
	// B ports conf
	DDRB = 0x0;
	PORTB = 0x0;
	PORTB |= _BV(PB0); // button
	DDRB = _BV(PB1) | _BV(PB2); // OC1A - PWM
	PORTB &= ~_BV(PB2); // initially turned off
	// D ports conf
	DDRD = 0x0;
	//DDRD |= _BV(PD4);
	PORTD |= _BV(PD7) | _BV(PD6); //buttons
	PORTD |= _BV(PD2) | _BV(PD4); // interrupt for encoder + B signal
}

void initInt()
{
	// interrupt conf
	/* ISC01    ISC00
	*  0 		1        Any logical change on INT0 generates an interrupt request.
	*  1       0        The falling edge of INT0 generates an interrupt request.
	*
	*/
	MCUCR |= _BV(ISC01); //
	GICR |= _BV(INT0);
	sei();
}
